/**
 * 原始类型的类型标注
 * 
 * 在 TypeScript 中，null 与 undefined 类型都是有具体意义的类型，
 * 
 * 在没有在tsconfig.json中开启 strictNullChecks 检查的情况下，
 * null 与 undefined会被视作其他类型的子类型，
 * 比如 string 类型会被认为包含了 null 与 undefined 类型
*/
//1、原始类型
const name: string = "1212";
const age: number = 24;
const male: boolean = false;
const undef: undefined = undefined;
const nul: null = null;
const obj: object = { name, age, male };
const bigintVar1: bigint = 9007199254740991n;
const bigintVar2: bigint = BigInt(9007199254740991);
const symbolVar: symbol = Symbol('unique');

//2、null 与 undefined 会被视作其他类型的子类型，
const tmp1: null = null;
const tmp2: undefined = undefined;
const tmp3: string = null; // 仅在关闭 strictNullChecks 时成立，下同
const tmp4: string = undefined;


//export {}：解决“无法重新声明块范围变量”错误提示问题
export {}